Improving Read Performance with Online Access Pattern Analysis and Prefetching
نویسندگان
چکیده
Among the major challenges of transitioning to exascale in HPC is the ubiquitous I/O bottleneck. For analysis and visualization applications in particular, this bottleneck is exacerbated by the write-onceread-many property of most scientific datasets combined with typically complex access patterns. One promising way to alleviate this problem is to recognize the application’s access patterns and utilize them to prefetch data, thereby overlapping computation and I/O.However, current research methods for analyzing access patterns are either offline-only and/or lack the support for complex access patterns, such as high-dimensional strided or composition-based unstructured access patterns. Therefore, we propose an online analyzer capable of detecting both simple and complex access patterns with low computational and memory overhead and high accuracy. By combining our pattern detection with prefetching, we consistently observe run-time reductions, up to 26%, across 18 configurations of PIOBench and 4 configurations of a micro-benchmark with both structured and unstructured access patterns.
منابع مشابه
Iteration Aware Prefetching for Large Multidimensional Scientific Datasets
Most caching and prefetching research does not take advantage of prior knowledge of access patterns, or does not adequately address the storage issues inherent with multidimensional scientific data. Armed with an access pattern specified as an iteration over a multidimensional array stored in a disk file, we use prefetching to greatly reduce the number of disk accesses and partially hide the co...
متن کاملExploring the Practicality of Prefetching Sequential Disk Accesses
Prefetching and buffering sequential reads offers the possibility of improving disk performance both in terms of throughput, by reading multiple requests in a single larger read, and in terms of access time, where prefetched requests could be serviced immediately from disk cache. This study shows that there is considerable opportunity for such prefetching, and that most of the potential benefit...
متن کاملData Cache Prefetching with Perceptron Learning
Cache prefetcher greatly eliminates compulsory cache misses, by fetching data from slower memory to faster cache before it is actually required by processors. Sophisticated prefetchers predict next use cache line by repeating program’s historical spatial and temporal memory access pattern. However, they are error prone and the mis-predictions lead to cache pollution and exert extra pressure on ...
متن کاملImproving Memory Access Performance of In-Memory Key-Value Store Using Data Prefetching Techniques
In-memory Key-Value stores (IMKVs) provide significantly higher performance than traditional disk-based counterparts. As memory technologies advance, IMKVs become practical for modern Big Data processing, which include financial services, e-commerce, telecommunication network, etc. Recently, various IMKVs have been proposed from both academia and industrial. In order to leverage high performanc...
متن کاملReducing Seek Overhead with Application-Directed Prefetching
An analysis of performance characteristics of modern disks finds that prefetching can improve the performance of nonsequential read access patterns by an order of magnitude or more, far more than demonstrated by prior work. Using this analysis, we design prefetching algorithms that make effective use of primary memory, and can sometimes gain additional speedups by reading unneeded data. We show...
متن کامل